package com.cyj.dream.admin.service.system;

import com.cyj.dream.admin.model.system.SysRole;
import com.cyj.dream.admin.model.system.SysUserRole;

import java.util.List;
import java.util.Set;

/**
 * @Description: 用户角色关联关系服务类
 * @BelongsProject: dream-DreamChardonnay
 * @BelongsPackage: com.dream.DreamChardonnay.service
 * @Author: ChenYongJia
 * @CreateTime: 2021-05-17 09:30
 * @Email: chen87647213@163.com
 * @Version: 1.0
 */
public interface SysUserRoleService {

    /**
     * 查询用户关联关系表
     *
     * @param sysUserRole 用户关联关系对象
     * @return java.util.List<com.dream.DreamChardonnay.model.system.SysUserRole>
     * @date 2021/5/17 9:55
     * @author ChenYongJia
     * @version 1.0
     */
    List<SysUserRole> selectSysUserRoleList(SysUserRole sysUserRole);

    /**
     * 获取所有用户信息
     *
     * @return java.util.List<SysRole>
     * @date 2021/6/9 21:01
     * @author ChenYongJia
     * @version 1.0
     */
    List<SysRole> getRoleLists();

    /**
     * 为用户设置角色
     *
     * @param sysUserId 用户id
     * @param sysRoleId 角色id集合
     * @return boolean
     * @date 2021-5-17 09:48:34
     * @author ChenYongJia
     * @version 1.0
     */
    boolean settingSysUserRole(Long sysUserId, Set<Long> sysRoleId);

    /**
     * 为用户移除设置的角色
     *
     * @param sysUserId 用户id
     * @param sysRoleId 角色id集合
     * @return boolean
     * @date 2021-5-17 09:48:34
     * @author ChenYongJia
     * @version 1.0
     */
    boolean deleteSysUserRole(Long sysUserId, Set<Long> sysRoleId);

}
